/*******************************************************************************
* Copyright (c) 2000, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.swt.custom;
import org.eclipse.swt.events.*;
/**
* This event is sent when a line is about to be drawn.
*
* @see <a href="http://www.eclipse.org/swt/">Sample code and further information</a>
*/
public class LineStyleEvent extends TypedEvent {
/**
* line start offset (input)
*/
public int lineOffset;
/**
* line text (input)
*/
public String lineText;
/**
* line ranges (output)
*
* @since 3.2
*/
public int[] ranges;
/**
* line styles (output)
*
* Note: Because a StyleRange includes the start and length, the
* same instance cannot occur multiple times in the array of styles.
* If the same style attributes, such as font and color, occur in
* multiple StyleRanges, <code>ranges</code> can be used to share
* styles and reduce memory usage.
*/
public StyleRange[] styles;
/**
* line alignment (input, output)
*
* @since 3.2
*/
public int alignment;
/**
* line indent (input, output)
*
* @since 3.2
*/
public int indent;
/**
* line wrap indent (input, output)
*
* @since 3.6
*/
public int wrapIndent;
/**
* line justification (input, output)
*
* @since 3.2
*/
public boolean justify;
/**
* line bullet (output)
* @since 3.2
*/
public Bullet bullet;
/**
* line bullet index (output)
* @since 3.2
*/
public int bulletIndex;
/**
* line tab stops (output)
* @since 3.6
*/
public int[] tabStops;
static final long serialVersionUID = 3906081274027192884L;
/**
* Constructs a new instance of this class based on the
* information in the given event.
*
* @param e the event containing the information
*/
public LineStyleEvent(StyledTextEvent e) {
super(e);
styles = e.styles;
ranges = e.ranges;
lineOffset = e.detail;
lineText = e.text;
alignment = e.alignment;
justify = e.justify;
indent = e.indent;
wrapIndent = e.wrapIndent;
bullet = e.bullet;
bulletIndex = e.bulletIndex;
tabStops = e.tabStops;
}
}